1. Field of the Invention
The present invention relates to computer-implemented systems and methods for drawing images, and in particular to a computer-aided drafting tool for drawing lines at pre-settable angles from an existing linear entity and at pre-settable distances from pick points on the existing linear entity.
2. Description of the Related Art
Computer Aided Design (CAD) and other drawing programs allow the preparation and editing of machine drawings, schematic drawings, and artwork. Typically, the user creates these drawings with the use of a library of objects and a number of drawing tools. These drawing tools allow the user to define and edit lines, polygons, ovoids, and other shapes.
One useful feature in such drawing programs is the ability to snap lines, and shapes to certain global coordinate frames. An example of such a system is the polar coordinate snap tool disclosed in U.S. Pat. No. 5,793,377, issued to Moore on Aug. 11, 1998, which is hereby incorporated by reference herein. This snap tool allows the user to specify a polar coordinate snap angle and length to which all future lines will be constrained.
However, in prior systems, the polar coordinate snap angle and length is referenced to a fixed (x,y) Cartesian coordinate frame, and hence only permit the drawings to snap to a coordinate frame that is globally applied to an entire drawing. No provision is made to constrain a new line to a specified geometrical relationship (such as a relative angle) with an existing line. This deficiency limits the usefulness of the conventional polar snap tools. What is needed is a tool that allows the user to draw new lines with specific, pre-defined geometrical relationships with existing, lines. The present invention satisfies that need.
To address the requirements described above, the present invention discloses a method, apparatus, article of manufacture for defining a line at a relative angle from a linear entity.
The method comprises the steps of accepting a command having a first pick point on the linear entity, computing an extension line extending from the first pick at a pre-settable relative angle from the linear entity when indicated by a position of a cursor, and displaying the extension line. In one embodiment, the extension line is snapped to a pre-set line based upon the distance between the cursor and the pre-set line. In another embodiment, the extension line is snapped to a pre-set line based upon its angular proximity to one of the pre-set snap lines. In yet another embodiment, the extension line is snapped to the pre-set line using either of the above methods, depending upon the distance between the cursor and the first pick point. Provision is made to snap the length of the extension line to a pre-settable linear distance from the linear entity.
The apparatus comprises a means for accepting a command having a first pick point on the linear entity, means for computing an extension line extending from the first pick point at a pre-settable relative angle from the linear entity when indicated by a position of the first cursor, and a means for displaying the extension line. In one embodiment of the present invention, the means for performing these operations are implemented in a computer operatively coupled to a display device. The article of manufacture comprises a data storage device tangibly embodying instructions to perform the method steps described above.